package com.yqkj.zysoft.upms.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.yqkj.zysoft.upms.entity.FrameworkDepart;
import com.yqkj.zysoft.upms.entity.dto.DepartTreeResponse;
import com.yqkj.zysoft.upms.entity.dto.FrameWorkDepartAddRequest;
import com.yqkj.zysoft.upms.entity.dto.FrameWorkDepartUpdateRequest;
import com.yqkj.zysoft.upms.entity.dto.QueryDepartRequest;

import java.util.List;

/**
 * <p>
 * 部门表 服务类
 * </p>
 *
 * @author GreatorMan.cool
 * @since 2022-09-13
 */
public interface IFrameworkDepartService extends IService<FrameworkDepart> {
    /**
     * 新增
     * @param frameWorkDepartAddRequest 参数
     * @return 返回 true 成功 false 失败
     */
    Long add(FrameWorkDepartAddRequest frameWorkDepartAddRequest);

    /**
     * 更新数据
     * @param frameWorkDepartUpdateRequest 参数
     * @return true 成功 false 失败
     */
    Boolean updateObject(FrameWorkDepartUpdateRequest frameWorkDepartUpdateRequest);
    /**
     * 管理列表查询
     * @param pageAuthRequest 分页查询条件
     * @return 返回数据
     */
    List<DepartTreeResponse> tree(QueryDepartRequest pageAuthRequest);
    /**
     * 删除部门
     * @param id ID
     * @return 返回 True 成功 false 失败
     */
    public Boolean del(Long id);
     /**
     * 启用
     * @param id ID
     * @return true 启用成功 false 启用失败
     */
    public Boolean able(Long id);

    /**
     * 启用
     * @param id ID
     * @return true 启用成功 false 启用失败
     */
    public Boolean disAble(Long id);

}
